package day0918;

import java.util.Iterator;
import java.util.Set;
import java.util.TreeSet;
//引入  java.util文件夹中  Set接口



class  Rabbit  implements  Comparable{
    String name;
    public Rabbit(String name) {
        this.name = name;
    }
    public int compareTo(Object o) {//TreeSet集合会自动用compareTo排序
        Rabbit  oo=(Rabbit)o;
        return this.name.length()-oo.name.length();
        //拿两个元素在compareTo中相减: 结果是正数 -升序
    }
    //必须实现接口的方法
}




//TreeSet
public class T1 {Integer i;
    public static void main(String[] args) {
        //1.定义TreeSet集合: 元素有序存储，不能重复，可以存储一个null
        Set<Object>  s=new TreeSet<Object>();
        Rabbit hmlt=new Rabbit("虹猫蓝兔");
        s.add(hmlt);
        s.add(new Rabbit("越狱兔"));
        //2.用iterator迭代器，操作集合中每个元素
        Iterator<Object>  ite=s.iterator();//2.1.获取迭代器对象(注射器)
        while(ite.hasNext()){//2.2.判断迭代器指针的下一位是否有元素
            Rabbit o=(Rabbit)ite.next();//如果满足，用迭代器的next()获取指针的下一位的元素
            System.out.println("o.name = " + o.name);
        }
    }
}

